A neuromorphic (or cognitive) computing system mimics the processing of the brain for specific applications. Such applications include, but are not limited to, pattern recognition, artificial intelligence, etc. In the brain, a synapse is a structure that permits a neuron (or nerve cell) to pass an electrical or chemical signal to another neuron. Similar to the brain, a neuromorphic computing system is comprised of a large scale network of neuron (processing) devices and adaptive synapse (memory) devices. The neuron device has two main functions. The first main function is to take input from connected synapse devices. If the input is above a predetermined input threshold, the neuron device generates a spike-like output signal that is processed as part of the larger network of neuron devices that then makes some computational decision. This process is referred to as spike-timing dependent plasticity (STDP). The second main function of the neuron device is to change the state of one or more connected synapse devices, where each synapse device in this case functions as a memory device.
Neuron and synapse devices have been implemented on an integrated circuit known as a neuromorphic chip. In one known implementation, the synapse devices are silicon-based devices such as transposable 8-transistor cell static random access memory (8-T SRAM) devices connected in a crossbar array. Other implementations include magnetic RAM (MRAM) or phase change memory (PCM).